package my.edu.model.bills.purchase.entity.vo;

import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Null;
import jakarta.validation.groups.Default;
import lombok.Data;
import my.edu.common.validate.IntegerPattern;
import my.edu.common.validate.groups.Insert;
import my.edu.model.bills.purchase.entity.dto.PurchaseDetailOrderDTO;
import my.edu.model.bills.purchase.entity.dto.PurchaseReturnDetailOrderDTO;
import my.edu.model.bills.purchase.entity.dto.PurchaseSalesExpensesDTO;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.List;

@Data
public class PurchaseReturnOrderVO {
    private Long        id;
    private String      orderNo;
    private LocalDate   orderDate;
    private BigDecimal discountRate;//优惠率
      private BigDecimal  discountAmount;//优惠金额
    private BigDecimal quantity;
    private BigDecimal refundAmount;//退款金额
    private BigDecimal amountAfterDiscount;//优惠后金额
    private BigDecimal  refundedAmount;//已退款金额
    //private BigDecimal refundedAmountWithPayableBalance;//供应商应付抵扣金额
    private String      refundStatus;//退款状态
    private Integer     isAudited;//是否审核
    private String      remark;//
    private String      deliveryMethod;//交货方式
    private Integer     sourcePurchaseQuantity;//源购货数量
    private Long        settlementAccountId;//结算账户ID
    private String      settlementAccountName;//
    private Long        logisticsId;//物流ID
    private String      logisticsNo;//
    private Long        supplierId;//供应商ID
    private String      supplierName;//
    private Long        salesmanId;//业务员ID
    private String      salesmanName;//
    private Long        purchaseOrderId;//购货单ID
    private String      purchaseOrderNo;//
   private Long         auditorId;//审核人ID
    private String      auditorName;//

    private List<PurchaseReturnDetailOrderVO> purchaseReturnDetailDTOList;
    private List<PurchaseSalesExpensesDTO> purchaseSalesExpensesDTOList;
}